package com.darrenchan.netease03

class Student {
  /**
    * 1.在scala中定义的属性，都需要进行初始化
    * 2.val修饰的属性，有getter，没setter
    * 3.var修饰的属性，有getter，有setter
    * 4.private修饰的变量，表示私有，除了自己其他组件都不能访问
    *   但是有一个例外，
    *   和当前这个类同名的object组件（对应的伴生对象）是可以访问的
    *   class Student 伴生类
    *   object Student 伴生对象
    *
    * 5.private 是自己+伴生对象可以访问
    *   private[this] 是只有自己可以访问
    *
    * 6.定义属性，没有加访问修饰符，默认是public的
    */

  println("hello world")
  val id = 20124849
  val name = "陈驰"
  private var age = 25
  private[this] var salary = 19000
}


object Student {
  def main(args: Array[String]): Unit = {

    //如果你调用new去创建一个对象的话，那么这个类的定义中{}里面的所有能执行的代码都会执行
    val stu = new Student()
    println(stu.id)
    println(stu.name)
    println(stu.age)
  }
}
